home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX 6.2 Development Libraries
/
SGI IRIX 6.2 Development Libraries.iso
/
dist
/
complib.idb
/
usr
/
share
/
catman
/
p_man
/
cat3
/
complib
/
DSIDI.z
/
DSIDI
Wrap
Text File
|
1996-03-14
|
3KB
|
133 lines
DDDDSSSSIIIIDDDDIIII((((3333FFFF)))) DDDDSSSSIIIIDDDDIIII((((3333FFFF))))
NNNNAAAAMMMMEEEE
DSIDI - DSIDI computes the determinant, inertia and inverse of a double
precision symmetric matrix using the factors from DSIFA.
SSSSYYYYNNNNOOOOPPPPSSSSYYYYSSSS
SUBROUTINE DSIDI(A,LDA,N,KPVT,DET,INERT,WORK,JOB)
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
On Entry
AAAA DOUBLE PRECISION(LDA,N)
the output from DSIFA.
LLLLDDDDAAAA INTEGER
the leading dimension of the array A.
NNNN INTEGER
the order of the matrix A.
KKKKPPPPVVVVTTTT INTEGER(N)
the pivot vector from DSIFA.
WWWWOOOORRRRKKKK DOUBLE PRECISION(N)
work vector. Contents destroyed.
JJJJOOOOBBBB INTEGER
JOB has the decimal expansion ABC where
if C .NE. 0, the inverse is computed,
if B .NE. 0, the determinant is computed,
if A .NE. 0, the inertia is computed.
For example, JOB = 111 gives all three. On Return Variables not
requested by JOB are not used.
AAAA contains the upper triangle of the inverse of
the original matrix. The strict lower triangle
is never referenced.
DDDDEEEETTTT DOUBLE PRECISION(2)
determinant of original matrix.
DETERMINANT = DET(1) * 10.0**DET(2)
with 1.0 .LE. DABS(DET(1)) .LT. 10.0
or DET(1) = 0.0.
IIIINNNNEEEERRRRTTTT INTEGER(3)
the inertia of the original matrix.
INERT(1) = number of positive eigenvalues.
INERT(2) = number of negative eigenvalues.
INERT(3) = number of zero eigenvalues. Error Condition
AAAA division by zero may occur if the inverse is requested and DSICO has
set RCOND .EQ. 0.0 or DSIFA has set INFO .NE. 0 . LINPACK. This
PPPPaaaaggggeeee 1111
DDDDSSSSIIIIDDDDIIII((((3333FFFF)))) DDDDSSSSIIIIDDDDIIII((((3333FFFF))))
version dated 08/14/78 . James Bunch, Univ. Calif. San Diego, Argonne
Nat. Lab Subroutines and Functions BLAS DAXPY,DCOPY,DDOT,DSWAP Fortran
DABS,IABS,MOD
PPPPaaaaggggeeee 2222